package com.zlm.common.util;

import com.zlm.common.dto.baidurequest.BaiduResultDataDto;
import com.zlm.common.dto.CoordinatesDto;
import com.zlm.common.dto.baidurequest.BaiduResultDto;

/**
 * 百度地图工具类
 * @Author: duyufu
 * @Date: 2019/5/24 16:46
 */
public class BaiduMapUtils {

    /**
     * 百度秘钥
     */
    public static String ak = "9FhqyV400QLiKAqPTiHmC3jASBXek2zO";

    public static String url = "http://api.map.baidu.com/geocoder/v2/?location=%s&output=json&pois=1&latest_admin=1&ak=%s";

    /**
     * 逆地理编码（根据坐标获取地址）
     * @param coordinates
     * @return
     */
    public static BaiduResultDto getGeocoder(CoordinatesDto coordinates) {
        String baiduUrl = String.format(url, coordinates.toWKT(), ak);
        String res = HttpClientUtils.doGet(baiduUrl);
        BaiduResultDto bean = null;
        if (!StringUtils.isEmpty(res)) {
            bean = (BaiduResultDto) GsonUtils.JSONToObject(res, BaiduResultDto.class);
        }
        return bean;
    }

}
